package io.github.nnkwrik.goodsservice.config;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
@EnableWebMvc
public class WebConfig implements WebMvcConfigurer {
    @Value("${file.upload-dir}")
    private String UPLOAD_DIR ; // 指定上传目录的路径

    private final String WEB_PATH = "/static/img/";
    /**
     * 配置资源处理器，将指定的URL路径映射到指定的资源目录
     *
     * @param registry 资源处理器注册器
     *
     */
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        // 1. 映射 /myresources/** 到类路径下的 /myresources/ 目录
        registry.addResourceHandler("/myresources/**")
                .addResourceLocations("classpath:/myresources/");

        // 2. 映射 /externalresources/** 到外部文件系统的指定目录
        //    注意：需要替换成实际的外部文件系统路径
        registry.addResourceHandler(WEB_PATH+"**")
                .addResourceLocations("file:"+UPLOAD_DIR);

        // 3. 映射 /custompath/** 到外部文件系统的另一个指定目录
        //    注意：需要替换成实际的外部文件系统路径
        registry.addResourceHandler("/custompath/**")
                .addResourceLocations("file:/path/to/another/directory/");
    }


}
